using Godot;
using System;
using Smr.基类;
using Smr.索引;
using Smr.接口;
using Smr.枚举;

public static class 装备模型
{
    public static C装备模型 取模型(E装备索引 模型名称)
    {
        return 模型名称 switch
        {
            E装备索引.定神道器 => new C装备模型
            {
                索引 = (int)E装备索引.定神道器,
                名称 = E装备索引.定神道器.ToString(),
                描述 = "这个世界最初级的装备。",
                类型 = E道具类型.装备,
                品质 = E道具品质.凡品,
                品级 = E道具品级.初级,
                可叠加 = false,
                叠加上限 = 1,
                可出售 = false,
                出售价格 = 1,

                部位 = E装备部位.法器,
                称谓要求 = E角色称谓.鬼卒,
                基础属性一 = new()
                {
                    属性名 = nameof(I战斗属性.伤害),
                    当前值 = 20f,
                },
                基础属性二 = new()
                {
                    属性名 = nameof(I战斗属性.防御),
                    当前值 = 10f,
                },
            },
            E装备索引.定神道帽 => new C装备模型
            {
                索引 = (int)E装备索引.定神道帽,
                名称 = E装备索引.定神道帽.ToString(),
                描述 = "这个世界最初级的装备。",
                类型 = E道具类型.装备,
                品质 = E道具品质.凡品,
                品级 = E道具品级.初级,
                可叠加 = false,
                叠加上限 = 1,
                可出售 = false,
                出售价格 = 1,

                部位 = E装备部位.帽子,
                称谓要求 = E角色称谓.鬼卒,
                基础属性一 = new()
                {
                    属性名 = nameof(I战斗属性.精力),
                    当前值 = 30f,
                },
                基础属性二 = new()
                {
                    属性名 = nameof(I战斗属性.体力),
                    当前值 = 20f,
                },
            },
            E装备索引.定神道袍 => new C装备模型
            {
                索引 = (int)E装备索引.定神道袍,
                名称 = E装备索引.定神道袍.ToString(),
                描述 = "这个世界最初级的装备。",
                类型 = E道具类型.装备,
                品质 = E道具品质.凡品,
                品级 = E道具品级.初级,
                可叠加 = false,
                叠加上限 = 1,
                可出售 = false,
                出售价格 = 1,

                部位 = E装备部位.衣服,
                称谓要求 = E角色称谓.鬼卒,
                基础属性一 = new()
                {
                    属性名 = nameof(I战斗属性.体力),
                    当前值 = 50f,
                },
                基础属性二 = new()
                {
                    属性名 = nameof(I战斗属性.精力),
                    当前值 = 20f,
                },
            },
            E装备索引.定神道靴 => new C装备模型
            {
                索引 = (int)E装备索引.定神道靴,
                名称 = E装备索引.定神道靴.ToString(),
                描述 = "这个世界最初级的装备。",
                类型 = E道具类型.装备,
                品质 = E道具品质.凡品,
                品级 = E道具品级.初级,
                可叠加 = false,
                叠加上限 = 1,
                可出售 = false,
                出售价格 = 1,

                部位 = E装备部位.鞋子,
                称谓要求 = E角色称谓.鬼卒,
                基础属性一 = new()
                {
                    属性名 = nameof(I战斗属性.速度),
                    当前值 = 10f,
                },
                基础属性二 = new()
                {
                    属性名 = nameof(I战斗属性.防御),
                    当前值 = 10f,
                },
            },
            _ => null
        };
    }
}
